// 导出所有数字输入组件
export { default as PercentageInput } from '../PercentageInput/index.vue';
export { default as MoneyInput } from '../MoneyInput/index.vue';
export { default as PersonInput } from '../PersonInput/index.vue';
export { default as DayInput } from '../DayInput/index.vue';
export { default as NumberInput } from './index.vue';

// 导出工具函数
export * from './utils';

// 导出类型定义
export interface NumberInputProps {
  modelValue?: string | number | null;
  placeholder?: string;
  size?: 'large' | 'default' | 'small';
  disabled?: boolean;
  unit?: string;
  min?: number;
  max?: number;
  precision?: number;
  required?: boolean;
  allowDecimal?: boolean;
}

export interface NumberInputEmits {
  (e: 'update:modelValue', value: string | number | null): void;
  (e: 'change', value: string | number | null): void;
  (e: 'blur', event: FocusEvent): void;
  (e: 'focus', event: FocusEvent): void;
}
